#include "bsp.h"


#define KEY1_READ()  ((KEY1_PORT->IDR & KEY1_PIN) != 0)

static void key_gpio_config(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;

    /* 打开GPIO时钟 */
    RCC_AHB1PeriphClockCmd(RCC_KEY_PORT, ENABLE);

    /* KEY1 接地 所以内部上拉 */
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;		/* 设为输出口 */
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;	 	
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;

    GPIO_InitStructure.GPIO_Pin = KEY1_PIN;
    GPIO_Init(KEY1_PORT, &GPIO_InitStructure);

    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
    GPIO_InitStructure.GPIO_Pin = KEY2_PIN;
    GPIO_Init(KEY2_PORT, &GPIO_InitStructure);
}

uint8_t bsp_key_read_pin(uint8_t _id)
{
    uint8_t ret = 0;
    switch (_id)
    {
        case KEY1:
            ret = KEY1_READ();
            break;
        default:
            break;
    }
    return ret;
}


void bsp_key_init(void)
{
    // 引脚初始化
    key_gpio_config();
}


